chore(deps): update dependency @vitejs/plugin-react to v5 #826
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.1.0->5.1.0Release Notes
vitejs/vite-plugin-react (@vitejs/plugin-react)
v5.1.0Compare Source
Add
@vitejs/plugin-react/preamblevirtual module for SSR HMR (#890)SSR applications can now initialize HMR runtime by importing
@vitejs/plugin-react/preambleat the top of their client entry instead of manually callingtransformIndexHtml. This simplifies SSR setup for applications that don't use thetransformIndexHtmlAPI.Fix raw Rolldown support for Rolldown 1.0.0-beta.44+ (#930)
Rolldown 1.0.0-beta.44+ removed the top-level
jsxoption in favor oftransform.jsx. This plugin now uses thetransform.jsxoption to support Rolldown 1.0.0-beta.44+.v5.0.4Compare Source
Perf: use native refresh wrapper plugin in rolldown-vite (#881)
v5.0.3Compare Source
HMR did not work for components imported with queries with rolldown-vite (#872)
Perf: simplify refresh wrapper generation (#835)
v5.0.2Compare Source
Skip transform hook completely in rolldown-vite in dev if possible (#783)
v5.0.1Compare Source
Set
optimizeDeps.rollupOptions.transform.jsxinstead ofoptimizeDeps.rollupOptions.jsxfor rolldown-vite (#735)optimizeDeps.rollupOptions.jsxis going to be deprecated in favor ofoptimizeDeps.rollupOptions.transform.jsx.Perf: skip
babel-plugin-react-compilerif code has no"use memo"when{ compilationMode: "annotation" }(#734)Respect tsconfig
jsxImportSource(#726)Fix
reactRefreshHostoption on rolldown-vite (#716)Fix
RefreshRuntimebeing injected twice for class components on rolldown-vite (#708)Skip
babel-plugin-react-compileron non client environment (689)v5.0.0Compare Source
v4.7.0Compare Source
Add HMR support for compound components (#518)
HMR now works for compound components like this:
Return
Plugin[]instead ofPluginOption[](#537)The return type has changed from
react(): PluginOption[]to more specialized typereact(): Plugin[]. This allows for type-safe manipulation of plugins, for example:v4.6.0Compare Source
Add raw Rolldown support
This plugin only worked with Vite. But now it can also be used with raw Rolldown. The main purpose for using this plugin with Rolldown is to use react compiler.
v4.5.2Compare Source
Suggest
@vitejs/plugin-react-oxcif rolldown-vite is detected #491Emit a log which recommends
@vitejs/plugin-react-oxcwhenrolldown-viteis detected to improve performance and use Oxc under the hood. The warning can be disabled by settingdisableOxcRecommendation: truein the plugin options.Use
optimizeDeps.rollupOptionsinstead ofoptimizeDeps.esbuildOptionsfor rolldown-vite #489This suppresses the warning about
optimizeDeps.esbuildOptionsbeing deprecated in rolldown-vite.Add Vite 7-beta to peerDependencies range #497
React plugins are compatible with Vite 7, this removes the warning when testing the beta.
v4.5.1Compare Source
Add explicit semicolon in preambleCode #485
This fixes an edge case when using HTML minifiers that strips line breaks aggressively.
v4.5.0Compare Source
Add
filterfor rolldown-vite #470Added
filterso that it is more performant when running this plugin with rolldown-powered version of Vite.Skip HMR for JSX files with hooks #480
This removes the HMR warning for hooks with JSX.
v4.4.1Compare Source
Fix type issue when using
moduleResolution: "node"in tsconfig #462v4.4.0Compare Source
Make compatible with rolldown-vite
This plugin is now compatible with rolldown-powered version of Vite.
Note that currently the
__sourceproperty value position might be incorrect. This will be fixed in the near future.v4.3.4Compare Source
Add Vite 6 to peerDependencies range
Vite 6 is highly backward compatible, not much to add!
Force Babel to output spec compliant import attributes #386
The default was an old spec (
with type: "json"). We now enforce spec compliant (with { type: "json" })v4.3.3Compare Source
React Compiler runtimeModule option removed
React Compiler was updated to accept a
targetoption andruntimeModulewas removed. vite-plugin-react will still detectruntimeModulefor backwards compatibility.When using a custom
runtimeModuleortarget !== '19', the plugin will not try to pre-optimizereact/compiler-runtimedependency.The react-compiler-runtime is now available on npm can be used instead of the local shim for people using the compiler with React < 19.
Here is the configuration to use the compiler with React 18 and correct source maps in development:
v4.3.2Compare Source
Ignore directive sourcemap error #369
v4.3.1Compare Source
Fix support for React Compiler with React 18
The previous version made this assumption that the compiler was only usable with React 19, but it's possible to use it with React 18 and a custom
runtimeModule: https://gist.github.com/poteto/37c076bf112a07ba39d0e5f0645fec43When using a custom
runtimeModule, the plugin will not try to pre-optimizereact/compiler-runtimedependency.Reminder: Vite expect code outside of
node_modulesto be ESM, so you will need to update the gist withimport React from 'react'.v4.3.0Compare Source
Fix support for React compiler
Don't set
retainLines: truewhen the React compiler is used. This creates whitespace issues and the compiler is modifying the JSX too much to get correct line numbers after that. If you want to use the React compiler and get back correct line numbers for tools like vite-plugin-react-click-to-component to work, you should update your config to something like:Support HMR for class components
This is a long overdue and should fix some issues people had with HMR when migrating from CRA.
v4.2.1Compare Source
Remove generic parameter on
Pluginto avoid type error with Rollup 4/Vite 5 andskipLibCheck: false.I expect very few people to currently use this feature, but if you are extending the React plugin via
apiobject, you can get back the typing of the hook by importingViteReactPluginApi:v4.2.0Compare Source
Update peer dependency range to target Vite 5
There were no breaking change that impacted this plugin, so any combination of React plugins and Vite core version will work.
Align jsx runtime for optimized dependencies
This will only affect people using internal libraries that contains untranspiled JSX. This change aligns the optimizer with the source code and avoid issues when the published source don't have
Reactin the scope.Reminder: While being partially supported in Vite, publishing TS & JSX outside of internal libraries is highly discouraged.
v4.1.1Compare Source
v4.1.0Compare Source
@types/babel__coresto dependencies (fix #211)@babel/core#212index.d.ctsfile so you don't get types errors when settingmoduleResolutiontonode16ornodenextin your tsconfig (we recommend usingbundlerwhich is more close to how Vite works)v4.0.4Compare Source
v4.0.3Compare Source
v4.0.2Compare Source
v4.0.1Compare Source
v4.0.0Compare Source
This major version include a revamp of options:
include/excludenow allow to completely override the files processed by the plugin (#122). This is more in line with other Rollup/Vite plugins and simplify the setup of enabling Fast Refresh for.mdxfiles. This can be done like this:These changes also allow to apply Babel plugins on files outside Vite root (expect in node_modules), which improve support for monorepo (fix #16).
With these changes, only the file extensions is used for filtering processed files and the query param fallback is removed.
fastRefreshis removed (#122). This should be correctly activated by plugin without configuration.jsxPureis removed. This is a niche use case that was just passing down the boolean to esbuild.jsxSideEffects. (#129)The support for React auto import whe using classic runtime is removed. This was prone to errors and added complexity for no good reason given the very wide support of automatic runtime nowadays. This migration path should be as simple as removing the runtime option from the config.
This release goes in hand with the upcoming Vite 4.3 release focusing on performances:
Other notable changes:
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.